From f81035fe34f2563964b9cd6928adb3e6ba744e67 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Tue, 4 Dec 2007 10:40:48 +0000 Subject: [PATCH] Fix xenmon.py to work on Solaris The xenmon.py script does not work on Solaris because of (1) its assumption that xenbaked is in the users path and, (2) the use of the killall command. Changed xenmon.py to use pkill instead and provided the path to xenbaked on Solaris. Signed-off-by: Tariq Magdon-Ismail --- tools/xenmon/xenmon.py | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/tools/xenmon/xenmon.py b/tools/xenmon/xenmon.py index 6a76d56ab7..1883107ac3 100644 --- a/tools/xenmon/xenmon.py +++ b/tools/xenmon/xenmon.py @@ -653,21 +653,36 @@ def writelog(): # start xenbaked def start_xenbaked(): global options - - os.system("killall -9 xenbaked") - # assumes that xenbaked is in your path - os.system("xenbaked --ms_per_sample=%d &" % + global kill_cmd + global xenbaked_cmd + + os.system(kill_cmd) + os.system(xenbaked_cmd + " --ms_per_sample=%d &" % options.mspersample) time.sleep(1) # stop xenbaked def stop_xenbaked(): - os.system("killall -s INT xenbaked") + global stop_cmd + os.system(stop_cmd) def main(): global options global args global domains + global stop_cmd + global kill_cmd + global xenbaked_cmd + + if os.uname()[0] == "SunOS": + xenbaked_cmd = "/usr/lib/xenbaked" + stop_cmd = "/usr/bin/pkill -INT -z global xenbaked" + kill_cmd = "/usr/bin/pkill -KILL -z global xenbaked" + else: + # assumes that xenbaked is in your path + xenbaked_cmd = "xenbaked" + stop_cmd = "/usr/bin/pkill -INT xenbaked" + kill_cmd = "/usr/bin/pkill -KILL xenbaked" parser = setup_cmdline_parser() (options, args) = parser.parse_args() -- 2.30.2